Method and apparatus for intra mode coding

ABSTRACT

A method and apparatus of predictive Intra coding of a block are disclosed. In one embodiment according to the present invention, a set of Intra prediction modes is determined, and predictive Intra coding is applied to a prediction unit (PU) of an image based on one or more neighboring PUs according to a current Intra prediction mode. The current Intra prediction mode is selected from the set of Intra prediction modes and the current Intra prediction mode is predicted using most probable modes (MPMs) and remaining modes. A number of the remaining modes is kept as a power of 2. For example, the 32 remaining modes can be represented using 5-bit fixed length codes.

CROSS REFERENCE TO RELATED APPLICATIONS

The present invention is a divisional of U.S. Non-Provisional patentapplication Ser. No. 14/371,438, filed on Jul. 10, 2014, which is aNational Phase of PCT Patent Application, Ser. No. PCT/CN2012/087887,filed on Dec. 28, 2012, which is a Continuation-In-Part of PCT PatentApplication Serial No. PCT/CN2012/070425, filed on Jan. 16, 2012,entitled “Intra Mode Coding”. The priority applications are herebyincorporated by reference in their entireties.

FIELD OF THE INVENTION

The present invention relates to video coding. In particular, thepresent invention relates to coding techniques associated with Intraprediction.

BACKGROUND AND RELATED ART

Intra prediction exploits spatial correlation within a picture or withina picture region. In order to improve coding efficiency, theHigh-Efficiency Video Coding (HEVC) standard being developed under theJoint Collaborative Team on Video Coding (JCT-VC) group of video codingexperts from ITU-T Study Group exploits block-based spatial predictionextensively. In HEVC, multiple Intra prediction modes are used toexploit spatial features and the number of Intra prediction modesdepends on the block size of a Prediction Unit (PU). In HEVC Test ModelVersion 5.0 (HM-5.0), the size of the PU for Intra coding can be 64×64,32×32, 16×16, 8×8, or 4×4. A total of 18 Intra prediction modes (mode 0to mode 17) are used for 4×4 PU while 35 Intra modes (mode 0 to mode 34)are used for 8×8, 16×16, 32×32 and 64×64 PU as shown in FIG. 1. The 35Intra prediction modes include 33 directional prediction modes, one DCmode and one Planar mode as shown in FIG. 1. Each Intra prediction mode,except for Intra prediction modes 0 and 3, has an associated angle asshown in FIG. 2. In HM-5.0, the Intra mode coding first maps the Intramode index (i.e., intraPredMode) to intraPredOrder as shown in Table 1.Then intraPredOrder is mapped to the angle parameter (i.e.,intraPredAngle) as shown in Table 2.

TABLE 1 intraPredMode 0 1 2 3 4 5 6 7 8 9 intraPredOrder — — — — 1 5 1317 21 29 intraPredMode 10 11 12 13 14 15 16 17 18 19 intraPredOrder 33 37 11 15 19 23 27 31 2 intraPredMode 20 21 22 23 24 25 26 27 28 29intraPredOrder 4 6 8 10 12 14 16 18 20 22 intraPredMode 30 31 32 33 34intraPredOrder 24 26 28 30 32

TABLE 2 intraPredOrder 0 1 2 3 4 5 6 7 8 9 intraPredAngle — −32 −26 −21−17 −13 −9 −5 −2 — intraPredOrder 10 11 12 13 14 15 16 17 18 19intraPredAngle 2 5 9 13 17 21 26 32 −26 −21 intraPredOrder 20 21 22 2324 25 26 27 28 29 intraPredAngle −17 −13 −9 −5 −2 — 2 5 9 13intraPredOrder 30 31 32 33 intraPredAngle 17 21 26 32

An alternative to the Intra mode index of FIG. 1 is to label each modewith its respective physical directions. FIG. 3 illustrates an exampleof Intra mode labeling, where “h” refers to the horizontal direction and“v” refers to the vertical direction.

In HM-5.0, the Intra mode coding of luma component comprises two mostprobable modes (MPMs) and the remaining modes. The two most probablemodes are derived for each PU from the Intra mode of the above PU andthe Intra mode of the left PU. If intraPredMode of the current PU isequal to either of the most probable modes, a flag prev_intra_pred_flagis set to 1 to indicate that intraPredMode of the current PU matches oneof the most probable modes and the index of the matched most probablemode is transmitted following the flag. If intraPredMode of the currentPU doesn't match any of the most probable modes, prev_intra_pred_flag isset to 0 to indicate this case and rem_intra_luma_pred_mode istransmitted following the flag to signal the index of the remaining modematching intraPredMode of the current PU. The binarization ofrem_intra_luma_pred_mode in CABAC is shown in Table 3 for 4×4 PU and inTable 4 for 8×8, 16×16, 32×32, and 64×64 PUs.

TABLE 3 Value of rem_intra_luma_pred_mode Bin string less than 16 FixedLength, 0000~1111

TABLE 4 Value of rem_intra_luma_pred_mode Bin string less than 31 FixedLength, 00000~11110 31 111110 32 111111

For 8×8, 16×16, 32×32 and 64×64 PU, there are 33 remaining modes, i.e.,33 possible values of rem_intra_luma_pred_mode as shown in Table 4. Thisrequires one additional bit for rem_intra_luma_pred_mode equal to 32 or33 compared to other remaining modes. This causes the code length ofrem_intra_luma_pred_mode to be non-uniform and additional operations maybe necessary for the corresponding coding process. It is desirable to beable to use fixed length codes for all remaining Intra prediction modes.

BRIEF SUMMARY OF THE INVENTION

A method and apparatus of predictive Intra coding of a block aredisclosed. In one embodiment according to the present invention, a setof Intra prediction modes is determined for applying predictive Intracoding to PUs. A current Intra prediction mode is selected from the setof Intra prediction modes and the current Intra prediction mode ispredicted using most probable modes (MPMs) and remaining modes, whereina number of the remaining modes is kept as a power of 2. For example,the number of the remaining modes is 32 and the remaining modes arerepresented using 5-bit fixed length codes.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 illustrates the 35 Intra prediction modes for High-EfficiencyVideo Coding (HEVC) labeled with Intra mode indices.

FIG. 2 illustrates the Intra prediction angles associated with Intraprediction modes for High-Efficiency Video Coding (HEVC).

FIG. 3 illustrates the 35 Intra prediction modes for High-EfficiencyVideo Coding (HEVC) labeled with physical directions.

FIG. 4A illustrates an example of Intra prediction mode reduction byremoving “h+6” Intra prediction mode (i.e., intraPredMode 18) accordingto an embodiment of the present invention.

FIG. 4B illustrates another example of Intra prediction mode reductionby removing “h+7” Intra prediction mode (i.e., intraPredMode 34)according to an embodiment of the present invention.

FIG. 4C illustrates another example of Intra prediction mode reductionby removing “v+7” Intra prediction mode (i.e., intraPredMode 26)according to an embodiment of the present invention.

FIG. 5 illustrates an exemplary flowchart for a system sharing Intraprediction modes between 4×4 PUs and PUs of other block sizes accordingto an embodiment of the present invention.

FIG. 6 illustrates an exemplary flowchart for a system incorporating areduced set of Intra prediction modes according to an embodiment of thepresent invention.

DETAILED DESCRIPTION OF THE INVENTION

As mentioned earlier, in HM-5.0, the 4×4 PU uses 18 Intra predictionmodes and the 8×8, 16×16, 32×32 and 64×64 PUs use 35 Intra predictionmodes. In other words, the 4×4 PU and larger PUs use different sets ofIntra prediction modes. This situation is the same for other codingsystems as well. For example, in H.264/AVC and RealVideo 8, the 4×4block uses 9 Intra prediction modes while the 16×16 block uses 4 Intraprediction modes. In VP8, the 4×4 block uses 10 Intra prediction modeswhile the 16×16 block uses 4 Intra prediction modes. The use ofdifferent sets of Intra prediction modes between the 4×4 PU (or block)and other PUs (or blocks) will increase system complexity. Therefore, anembodiment of the present invention unifies the Intra prediction modesbetween the 4×4 PU and PUs having other block sizes. As an example, the4×4 PU uses the same Intra prediction modes as 8×8, 16×16, 32×32 and64×64 PUs. In this case, instead of 18 Intra prediction modes, the 4×4PU may also use the set of 35 Intra prediction modes as the 8×8, 16×16,32×32 and 64×64 PUs.

In Intra mode coding, more Intra prediction modes will require more bitsto represent a selected Intra prediction mode for a current Intra mode.It is desirable to reduce the number of Intra prediction modes withnegligible performance impact. According to one embodiment of thepresent invention, the set of 35 Intra prediction modes is reduced to aset of 34 Intra prediction modes. By examining the 35 Intra predictionmodes shown in FIG. 1 and FIG. 3, it is noticed that neither Intraprediction mode 18 (i.e., “h+6”) nor Intra prediction mode 34 (i.e.,“h+7”) is included in the original set of 18 Intra prediction modes forthe 4×4 PU. Therefore, either Intra prediction mode 18 (i.e., “h+6”) orIntra prediction mode 34 (i.e., “h+7”) can be removed from the set of 35Intra prediction modes according to one embodiment.

Upon removal of an Intra prediction mode from the set of 35 Intraprediction modes, the mapping between the Intra mode indexes (i.e.,intraPredMode) and intraPredOrder has to be modified accordingly and anexample of modified mapping is shown in Table 5 (intraPredMode 18removal) and Table 6 (intraPredMode 34 removal). Similarly, the mappingbetween intraPredOrder and the angle parameters (i.e., intraPredAngle)has to be modified as well and an example of the modified mapping isshown in Table 7 (intraPredMode 18 removal) and Table 8 (intraPredMode34 removal). In HM-5.0, the current Intra prediction mode is coded usingpredictive coding based on the 2 most probable modes (MPMs) andremaining modes. When the 2 most probable modes are used, there will be32 remaining modes after one Intra prediction mode is removed. Thebinarization of the 32 remaining modes for CABAC can be done using 5-bitfixed length codes as shown in Table 9. In tables 5 through 8, the “*”symbol indicates that there is no corresponding mapping element.

While the mapping between intraPredMode and intraPredOrder can berepresent in a table form as shown in Tables 5 and 6, the mapping mayalso be represented in an ordered set form. For example, Table 5 can berepresented by the ordered set {*, *, *, *, 1, 5, 13, 17, 21, 29, 32, 3,7, 11, 15, 19, 23, 27, 2, 4, 6, 8, 10, 12, 14, 16, 18, 20, 22, 24, 26,28, 30, 31}, wherein the first 4 ordered elements (i.e., “*,*,*,*”)correspond to intraPredMode=0, 1, 2 and 3 respectively. The fifthordered element (i.e., “1”) correspond to intraPredMode=4, and so on.Similarly, Table 6 can be represented by the ordered set {*, *, *, *, 1,5, 13, 17, 21, 29, 32, 3, 7, 11, 15, 19, 23, 27, 31, 2, 4, 6, 8, 10, 12,14, 16, 18, 20, 22, 24, 26, 28, 30}.

The ordered set representation can also be applied to the mappingbetween intraPredOrder and intraPredAngle as shown in Tables 7 and 8.Accordingly, Table 7 can be represented by the ordered set {*, −32, −26,−21, −17, −13, −9, −5, −2, *, 2, 5, 9, 13, 17, 21, 26, 32, −26, −21,−17, −13, −9, −5, −2, *, 2, 5, 9, 13, 17, 26, 32} and Table 8 can berepresented by the ordered set {*, −32, −26, −21, −17, −13, −9, −5, −2,*, 2, 5, 9, 13, 17, 21, 26, 32, −26, −21, −17, −13, −9, −5, −2, *, 2, 5,9, 13, 17, 21, 32}.

TABLE 5 intraPredMode 0 1 2 3 4 5 6 7 8 9 intraPredOrder * * * * 1 5 1317 21 29 intraPredMode 10 11 12 13 14 15 16 17 18 19 intraPredOrder 32 37 11 15 19 23 27 2 4 intraPredMode 20 21 22 23 24 25 26 27 28 29intraPredOrder 6 8 10 12 14 16 18 20 22 24 intraPredMode 30 31 32 33intraPredOrder 26 28 30 31

TABLE 6 intraPredMode 0 1 2 3 4 5 6 7 8 9 intraPredOrder * * * * 1 5 1317 21 29 intraPredMode 10 11 12 13 14 15 16 17 18 19 intraPredOrder 32 37 11 15 19 23 27 31 2 intraPredMode 20 21 22 23 24 25 26 27 28 29intraPredOrder 4 6 8 10 12 14 16 18 20 22 intraPredMode 30 31 32 33intraPredOrder 24 26 28 30

TABLE 7 intraPredOrder 0 1 2 3 4 5 6 7 8 9 intraPredAngle * −32 −26 −21−17 −13 −9 −5 −2 * intraPredOrder 10 11 12 13 14 15 16 17 18 19intraPredAngle 2 5 9 13 17 21 26 32 −26 −21 intraPredOrder 20 21 22 2324 25 26 27 28 29 intraPredAngle −17 −13 −9 −5 −2 * 2 5 9 13intraPredOrder 30 31 32 intraPredAngle 17 26 32

TABLE 8 intraPredOrder 0 1 2 3 4 5 6 7 8 9 intraPredAngle * −32 −26 −21−17 −13 −9 −5 −2 * intraPredOrder 10 11 12 13 14 15 16 17 18 19intraPredAngle 2 5 9 13 17 21 26 32 −26 −21 intraPredOrder 20 21 22 2324 25 26 27 28 29 intraPredAngle −17 −13 −9 −5 −2 * 2 5 9 13intraPredOrder 30 31 32 intraPredAngle 17 21 32

TABLE 9 Value of rem_intra_luma_pred_mode Bin string less than 32 FixedLength, 00000~11110

While removal of Intra prediction mode 18 or 34 is used in the aboveexamples as a means to reduce the number of Intra prediction modes,other Intra prediction mode may be selected for removal as well. Forexample, Intra prediction mode 26 can be removed and an example ofmodified mapping between the Intra mode indexes (i.e., intraPredMode)and intraPredOrder is shown in Table 10 and an example of modifiedmapping between the intraPredOrder and the angle parameters (i.e.,intraPredAngle) is shown in Table 11.

TABLE 10 intraPredMode 0 1 2 3 4 5 6 7 8 9 intraPredOrder * * * * 1 5 1316 20 28 intraPredMode 10 11 12 13 14 15 16 17 18 19 intraPredOrder 32 37 11 15 18 22 26 30 2 intraPredMode 20 21 22 23 24 25 26 27 28 29intraPredOrder 4 6 8 10 12 14 17 19 21 23 intraPredMode 30 31 32 33intraPredOrder 25 27 29 31

TABLE 11 intraPredOrder 0 1 2 3 4 5 6 7 8 9 intraPredAngle * −32 −26 −21−17 −13 −9 −5 −2 * intraPredOrder 10 11 12 13 14 15 16 17 18 19intraPredAngle 2 5 9 13 17 21 32 −26 −21 −17 intraPredOrder 20 21 22 2324 25 26 27 28 29 intraPredAngle −13 −9 −5 −2 * 2 5 9 13 17intraPredOrder 30 31 32 intraPredAngle 21 26 32

The ordered set representation for Table 10 is {*, *, *, *, 1, 5, 13,16, 20, 28, 32, 3, 7, 11, 15, 18, 22, 26, 30, 2, 4, 6, 8, 10, 12, 14,17, 19, 21, 23, 25, 27, 29, 31} and the ordered set representation forTable 11 is {*, −32, −26, −21, −17, −13, −9, −5, −2, *, 2, 5, 9, 13, 17,21, 32, −26, −21, −17, −13, −9, −5, −2, *, 2, 5, 9, 13, 17, 21, 26, 32}.

The above embodiments of reducing intra prediction modes are just someexamples. The other intra prediction modes can also be removed to solvethe problem. By using this method, the remaining modes can be kept asthe power of 2, so that a fixed length binarization can be used. Forexample, 5-bit fix length binarization can be used for the 32 remainingmodes.

The performance of a coding system incorporating an embodiment of thepresent invention is compared with a reference system based on HEVCsystem without reduced number of Intra prediction modes. The performanceis measured in terms of BD rate, where a negative value impliesperformance improvement over the reference system. The BD ratecomparison is performed by adjusting coding parameters so that theunderlying systems result in about the same objective quality. Theperformance results are shown in Table 12 for the case where Intraprediction mode 18 (i.e., “h+6”) is removed. In Table 12, HE refers toHigh Efficiency coding configuration. Classes A through E refer todifferent sets of test video. As shown in Table 12, the impact onperformance in terms of BD rate for Y, U and V components is very small.The performance results are shown in Table 13 for the case where Intraprediction mode 34 (i.e., “h+7”) is removed. Again, the impact onperformance is very small.

TABLE 12 All Intra HE Y U V Class A 0.13% 0.12% 0.12% Class B 0.01%0.04% 0.01% Class C 0.04% 0.05% 0.05% Class D 0.03% 0.04% −0.02% Class E0.04% 0.03% 0.03% Overall 0.05% 0.06% 0.04% Enc Time [%] 100% Dec Time[%] 100%

TABLE 13 All Intra HE Y U V Class A 0.04% 0.01% 0.03% Class B 0.01%0.00% 0.02% Class C 0.03% 0.02% 0.01% Class D 0.01% 0.02% 0.01% Class E0.02% 0.15% 0.04% Overall 0.02% 0.03% 0.02% Enc Time [%] 100% Dec Time[%] 100%

When a system adopts a unified set of Intra prediction modes for the 4×4PU and PUs of other sizes, both the encoder side and the decoder sidewill use this unified set. FIG. 5 illustrates an exemplary flowchart ofa coding system that shares the same set of Intra prediction modesbetween 4×4 PUs and PUs having other block sizes. A set of Intraprediction modes is determined in step 510. For a video encoder, the setof Intra prediction modes may be determined according to a pre-definedset. For example, the set with 35 Intra prediction modes as defined inHM-5.0 may be used. For a video decoder, the set of Intra predictionmodes may also be determined according to a pre-defined set.Alternatively, a video encoder may use a set of Intra prediction modesof its own and convey the information in the bitstream. In this case,the decoder can determine the set of Intra prediction modes from thereceived bitstream. The predictive Intra coding is then applied to a PUof an image based on one or more neighboring PUs according to a currentIntra prediction mode as shown in step 520, wherein the current Intraprediction mode is selected from the set of Intra prediction modes, andwherein the set of Intra prediction modes is used for PUs correspondingto different block sizes including a 4×4 block size and at least oneother block size. The predictive Intra coding may correspond topredictive Intra encoding for a video encoder or predictive Intradecoding for a video decoder. For a video encoder, the current Intraprediction mode may be selected according to a performance criterion,such as minimal RD rate. The current Intra prediction mode may beselected in a predictive fashion. Information related to the currentIntra prediction mode may have to be incorporated in the bitstream sothat a decoder may derive the same information. For a video decoder, thecurrent Intra prediction mode may be derived from the bitstream orinferred from coding conditions.

When a system uses a set of reduced number of Intra prediction modes,the reduced set will be used in the encoder as well as the decoder sothat the system can operate properly. FIG. 6 illustrates an exemplaryflowchart for a coding system that uses a reduced set of Intraprediction modes. A reduced set of Intra prediction modes is determinedin step 610, wherein the reduced set of Intra prediction modes isderived from an original set of Intra prediction modes by removing atleast one Intra prediction mode from the original set of Intraprediction modes. At a video encoder side, the encoder may determine thereduced set according to one pre-defined set. The encoder may alsoselect a reduced set of its own. The information regarding the reducedset may have to be incorporated in the bitstream so that a decoder mayderive the same information. The predictive Intra coding is then appliedto a PU of an image based on one or more neighboring PUs according acurrent Intra prediction mode as shown in step 620, wherein the currentIntra prediction mode is selected from the reduced set of Intraprediction modes. Again, for a video encoder, the current Intraprediction mode may be selected according to a performance criterion,such as minimal RD rate. The current Intra prediction mode may beselected in a predictive fashion. Information related to the currentIntra prediction mode may have to be incorporated in the bitstream sothat a decoder may derive the same information. For a video decoder, thecurrent Intra prediction mode may be derived from the bitstream orinferred from coding conditions.

The flowcharts shown in FIG. 5 and FIG. 6 are intended for serving asexamples of sharing a set of Intra prediction modes and using a reducedset of Intra prediction modes according to embodiments of the presentinvention. A person skilled in the art may practice the presentinvention by modifying individual steps, splitting or combining stepswith departing from the spirit of the present invention.

The above description is presented to enable a person of ordinary skillin the art to practice the present invention as provided in the contextof a particular application and its requirement. Various modificationsto the described embodiments will be apparent to those with skill in theart, and the general principles defined herein may be applied to otherembodiments. Therefore, the present invention is not intended to belimited to the particular embodiments shown and described, but is to beaccorded the widest scope consistent with the principles and novelfeatures herein disclosed. In the above detailed description, variousspecific details are illustrated in order to provide a thoroughunderstanding of the present invention. Nevertheless, it will beunderstood by those skilled in the art that the present invention may bepracticed.

Embodiment of the present invention as described above may beimplemented in various hardware, software codes, or a combination ofboth. For example, an embodiment of the present invention can be acircuit integrated into a video compression chip or program codeintegrated into video compression software to perform the processingdescribed herein. An embodiment of the present invention may also beprogram code to be executed on a Digital Signal Processor (DSP) toperform the processing described herein. The invention may also involvea number of functions to be performed by a computer processor, a digitalsignal processor, a microprocessor, or field programmable gate array(FPGA). These processors can be configured to perform particular tasksaccording to the invention, by executing machine-readable software codeor firmware code that defines the particular methods embodied by theinvention. The software code or firmware code may be developed indifferent programming languages and different formats or styles. Thesoftware code may also be compiled for different target platforms.However, different code formats, styles and languages of software codesand other means of configuring code to perform the tasks in accordancewith the invention will not depart from the spirit and scope of theinvention.

The invention may be embodied in other specific forms without departingfrom its spirit or essential characteristics. The described examples areto be considered in all respects only as illustrative and notrestrictive. The scope of the invention is therefore, indicated by theappended claims rather than by the foregoing description. All changeswhich come within the meaning and range of equivalency of the claims areto be embraced within their scope.

The invention claimed is:
 1. A method for predictive Intra coding of ablock, the method comprising: determining a set of Intra predictionmodes for a predictive unit (PU) block of an image comprising at leastone most probable mode (MPM) and a plurality of remaining modes suchthat a number of remaining modes in the plurality of remaining modes iskept equal to a power of 2; and applying predictive Intra coding to thePU block based on one or more neighboring PU blocks according to acurrent Intra prediction mode selected from the set of Intra predictionmodes.
 2. The method of claim 1, wherein the plurality of remainingmodes are represented using fixed length binarization.
 3. The method ofclaim 1, wherein the plurality of remaining modes consists of 32remaining modes.
 4. The method of claim 3, wherein the 32 remainingmodes are represented using 5-bit fixed length codes.
 5. The method ofclaim 1, wherein the set of Intra prediction modes is used for PU blockswith a plurality of different block sizes including a 4×4 block size andat least one other block size.
 6. The method of claim 5, wherein the atleast one other block size includes at least one member selected fromthe group consisting of: an 8×8 block size, a 16×16 block size, a 32×32block size, and a 64×64 block size.
 7. The method of claim 1, whereinthe set of Intra prediction modes contains 35 Intra prediction modes. 8.The method of claim 1, wherein the set of Intra prediction modes is usedfor PU blocks of all block sizes.
 9. An apparatus for predictive Intracoding of a block, the apparatus comprising one or more electroniccircuits configured for: determining a set of Intra prediction modes fora predictive unit (PU) block of an image comprising at least one mostprobable mode (MPM) and a plurality of remaining modes such that anumber of remaining modes in the plurality of remaining modes is keptequal to a power of 2; and applying predictive Intra coding to the PUblock based on one or more neighboring PU blocks according to a currentIntra prediction mode.
 10. The apparatus of claim 9, wherein theplurality of remaining modes are represented using fixed lengthbinarization.
 11. The apparatus of claim 9, wherein the plurality ofremaining modes consists of 32 remaining modes.
 12. The apparatus ofclaim 11, wherein the 32 remaining modes are represented using 5-bitfixed length codes.
 13. The apparatus of claim 9, wherein the set ofIntra prediction modes is used for PU blocks with a plurality ofdifferent block sizes including a 4×4 block size and at least one otherblock size.
 14. The apparatus of claim 13, wherein the at least oneother block size includes at least one member selected from the groupconsisting of: an 8×8 block size, a 16×16 block size, a 32×32 blocksize, and a 64×64 block size.
 15. The apparatus of claim 9, wherein theset of Intra prediction modes contains 35 Intra prediction modes. 16.The apparatus of claim 9, wherein the set of Intra prediction modes isused for PU blocks of all block sizes.
 17. The apparatus of claim 1,wherein determining the set of Intra prediction modes for the PU blockcomprises: identifying 35 Intra prediction modes; and removing at leastone Intra prediction mode from the identified 35 Intra prediction modesto form the set of Intra prediction modes for the PU block.
 18. Anon-transitory computer readable medium storing a computer-executableprogram, the computer-executable program, when executed, causing adecoder to perform the following steps: determining a set of Intraprediction modes for a predictive unit (PU) block of an image comprisingat least one most probable mode (MPM) and a plurality of remaining modessuch that a number of remaining modes in the plurality of remainingmodes is kept equal to a power of 2; and applying predictive Intracoding to the PU block based on one or more neighboring PU blocksaccording to a current Intra prediction mode selected from the set ofIntra prediction modes.